package com.costaccounting.feesys.domain;

import java.math.BigDecimal;
import java.util.List;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.costaccounting.common.annotation.Excel;
import com.costaccounting.common.core.domain.BaseEntity;

/**
 * 费用管理对象 zs_fee
 * 
 * @author ruoyi
 * @date 2021-11-08
 */
public class ZsFee extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 项目id */
    @Excel(name = "项目id")
    private Long itemId;

    /** 项目名称 */
    @Excel(name = "项目名称")
    private String itemName;

    /** 所属类目 */
    @Excel(name = "所属类目")
    private Long categoryId;

    /** 类目名称 */
    @Excel(name = "类目名称")
    private String categoryName;

    /** 路径 */
    @Excel(name = "路径")
    private String ancestors;

    /** 楼号id */
    @Excel(name = "楼号id")
    private String floorId;

    /** 楼号 */
    @Excel(name = "楼号")
    private String floorName;

    /** 费用类型(成本预算,实际费用,工程核算) */
    @Excel(name = "费用类型(成本预算,实际费用,工程核算)")
    private String feeType;

    /** 详细部位 */
    @Excel(name = "详细部位")
    private String detailBody;

    /** 项目特征描述 */
    @Excel(name = "项目特征描述")
    private String featureDes;

    /** 单位 */
    @Excel(name = "单位")
    private String unitId;
    private String materialUnitId;
    private String machineryUnitId;

    /** 人工单价 */
    @Excel(name = "人工单价")
    private BigDecimal laborPrice;

    /** 人工工程量 */
    @Excel(name = "人工工程量")
    private BigDecimal laborNum;

    /** 人工小计 */
    @Excel(name = "人工小计")
    private BigDecimal laborTotal;

    /** 材料单价 */
    @Excel(name = "材料单价")
    private BigDecimal materialPrice;

    /** 材料工程量 */
    @Excel(name = "材料工程量")
    private BigDecimal materialNum;

    /** 材料小计 */
    @Excel(name = "材料小计")
    private BigDecimal materialTotal;

    /** 机械单价 */
    @Excel(name = "机械单价")
    private BigDecimal machineryPrice;

    /** 机械工程量 */
    @Excel(name = "机械工程量")
    private BigDecimal machineryNum;

    /** 机械小计 */
    @Excel(name = "机械小计")
    private BigDecimal machineryTotal;

    /** 综合合计 */
    @Excel(name = "综合合计")
    private BigDecimal totalAmount;

    /** 1%发票费 */
    @Excel(name = "1%发票费")
    private BigDecimal bill1;

    /** 3%发票费 */
    @Excel(name = "3%发票费")
    private BigDecimal bill3;

    /** 6%发票费 */
    @Excel(name = "6%发票费")
    private BigDecimal bill6;

    /** 9%发票费 */
    @Excel(name = "9%发票费")
    private BigDecimal bill9;

    /** 13%发票费 */
    @Excel(name = "13%发票费")
    private BigDecimal bill13;

    /** 普票费 */
    @Excel(name = "普票费")
    private BigDecimal bill;

    private BigDecimal ysPrice;
    private BigDecimal ysNum;
    private BigDecimal ysTotal;
    private Integer isAllPrice;
    private BigDecimal allPrice;
    private BigDecimal allNum;
    private BigDecimal allTotal;
    private BigDecimal avgPrice;//单方造价
    //占比
    private String zhaibi;
    //人材机
    private String feeCategory;

    public String getFeeCategory() {
        return feeCategory;
    }

    public void setFeeCategory(String feeCategory) {
        this.feeCategory = feeCategory;
    }

    public String getZhaibi() {
        return zhaibi;
    }

    public void setZhaibi(String zhaibi) {
        this.zhaibi = zhaibi;
    }

    public BigDecimal getAvgPrice() {
        return avgPrice;
    }

    public void setAvgPrice(BigDecimal avgPrice) {
        this.avgPrice = avgPrice;
    }

    public Integer getIsAllPrice() {
        return isAllPrice;
    }

    public void setIsAllPrice(Integer isAllPrice) {
        this.isAllPrice = isAllPrice;
    }

    public BigDecimal getAllPrice() {
        return allPrice;
    }

    public void setAllPrice(BigDecimal allPrice) {
        this.allPrice = allPrice;
    }

    public BigDecimal getAllNum() {
        return allNum;
    }

    public void setAllNum(BigDecimal allNum) {
        this.allNum = allNum;
    }

    public BigDecimal getAllTotal() {
        return allTotal;
    }

    public void setAllTotal(BigDecimal allTotal) {
        this.allTotal = allTotal;
    }

    public BigDecimal getYsPrice() {
        return ysPrice;
    }

    public void setYsPrice(BigDecimal ysPrice) {
        this.ysPrice = ysPrice;
    }

    public BigDecimal getYsNum() {
        return ysNum;
    }

    public void setYsNum(BigDecimal ysNum) {
        this.ysNum = ysNum;
    }

    public BigDecimal getYsTotal() {
        return ysTotal;
    }

    public void setYsTotal(BigDecimal ysTotal) {
        this.ysTotal = ysTotal;
    }

    /** 状态（0正常 1暂停） */
    @Excel(name = "状态", readConverterExp = "0=正常,1=暂停")
    private String status;

    public String getMaterialUnitId() {
        return materialUnitId;
    }

    public void setMaterialUnitId(String materialUnitId) {
        this.materialUnitId = materialUnitId;
    }

    public String getMachineryUnitId() {
        return machineryUnitId;
    }

    public void setMachineryUnitId(String machineryUnitId) {
        this.machineryUnitId = machineryUnitId;
    }

    private List<Long> categoryIdList;

    public List<Long> getCategoryIdList() {
        return categoryIdList;
    }

    public void setCategoryIdList(List<Long> categoryIdList) {
        this.categoryIdList = categoryIdList;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setItemId(Long itemId) 
    {
        this.itemId = itemId;
    }

    public Long getItemId() 
    {
        return itemId;
    }
    public void setItemName(String itemName) 
    {
        this.itemName = itemName;
    }

    public String getItemName() 
    {
        return itemName;
    }
    public void setCategoryId(Long categoryId) 
    {
        this.categoryId = categoryId;
    }

    public Long getCategoryId() 
    {
        return categoryId;
    }
    public void setCategoryName(String categoryName) 
    {
        this.categoryName = categoryName;
    }

    public String getCategoryName() 
    {
        return categoryName;
    }
    public void setAncestors(String ancestors) 
    {
        this.ancestors = ancestors;
    }

    public String getAncestors() 
    {
        return ancestors;
    }
    public void setFloorId(String floorId) 
    {
        this.floorId = floorId;
    }

    public String getFloorId() 
    {
        return floorId;
    }
    public void setFloorName(String floorName) 
    {
        this.floorName = floorName;
    }

    public String getFloorName() 
    {
        return floorName;
    }
    public void setFeeType(String feeType) 
    {
        this.feeType = feeType;
    }

    public String getFeeType() 
    {
        return feeType;
    }
    public void setDetailBody(String detailBody) 
    {
        this.detailBody = detailBody;
    }

    public String getDetailBody() 
    {
        return detailBody;
    }
    public void setFeatureDes(String featureDes) 
    {
        this.featureDes = featureDes;
    }

    public String getFeatureDes() 
    {
        return featureDes;
    }
    public void setUnitId(String unitId) 
    {
        this.unitId = unitId;
    }

    public String getUnitId() 
    {
        return unitId;
    }
    public void setLaborPrice(BigDecimal laborPrice) 
    {
        this.laborPrice = laborPrice;
    }

    public BigDecimal getLaborPrice() 
    {
        return laborPrice;
    }
    public void setLaborNum(BigDecimal laborNum) 
    {
        this.laborNum = laborNum;
    }

    public BigDecimal getLaborNum() 
    {
        return laborNum;
    }
    public void setLaborTotal(BigDecimal laborTotal) 
    {
        this.laborTotal = laborTotal;
    }

    public BigDecimal getLaborTotal() 
    {
        return laborTotal;
    }
    public void setMaterialPrice(BigDecimal materialPrice) 
    {
        this.materialPrice = materialPrice;
    }

    public BigDecimal getMaterialPrice() 
    {
        return materialPrice;
    }
    public void setMaterialNum(BigDecimal materialNum) 
    {
        this.materialNum = materialNum;
    }

    public BigDecimal getMaterialNum() 
    {
        return materialNum;
    }
    public void setMaterialTotal(BigDecimal materialTotal) 
    {
        this.materialTotal = materialTotal;
    }

    public BigDecimal getMaterialTotal() 
    {
        return materialTotal;
    }
    public void setMachineryPrice(BigDecimal machineryPrice) 
    {
        this.machineryPrice = machineryPrice;
    }

    public BigDecimal getMachineryPrice() 
    {
        return machineryPrice;
    }
    public void setMachineryNum(BigDecimal machineryNum) 
    {
        this.machineryNum = machineryNum;
    }

    public BigDecimal getMachineryNum() 
    {
        return machineryNum;
    }
    public void setMachineryTotal(BigDecimal machineryTotal) 
    {
        this.machineryTotal = machineryTotal;
    }

    public BigDecimal getMachineryTotal() 
    {
        return machineryTotal;
    }
    public void setTotalAmount(BigDecimal totalAmount) 
    {
        this.totalAmount = totalAmount;
    }

    public BigDecimal getTotalAmount() 
    {
        return totalAmount;
    }
    public void setBill1(BigDecimal bill1) 
    {
        this.bill1 = bill1;
    }

    public BigDecimal getBill1() 
    {
        return bill1;
    }
    public void setBill3(BigDecimal bill3) 
    {
        this.bill3 = bill3;
    }

    public BigDecimal getBill3() 
    {
        return bill3;
    }
    public void setBill6(BigDecimal bill6) 
    {
        this.bill6 = bill6;
    }

    public BigDecimal getBill6() 
    {
        return bill6;
    }
    public void setBill9(BigDecimal bill9) 
    {
        this.bill9 = bill9;
    }

    public BigDecimal getBill9() 
    {
        return bill9;
    }
    public void setBill13(BigDecimal bill13) 
    {
        this.bill13 = bill13;
    }

    public BigDecimal getBill13() 
    {
        return bill13;
    }
    public void setBill(BigDecimal bill) 
    {
        this.bill = bill;
    }

    public BigDecimal getBill() 
    {
        return bill;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("itemId", getItemId())
            .append("itemName", getItemName())
            .append("categoryId", getCategoryId())
            .append("categoryName", getCategoryName())
            .append("ancestors", getAncestors())
            .append("floorId", getFloorId())
            .append("floorName", getFloorName())
            .append("feeType", getFeeType())
            .append("detailBody", getDetailBody())
            .append("featureDes", getFeatureDes())
            .append("unitId", getUnitId())
            .append("laborPrice", getLaborPrice())
            .append("laborNum", getLaborNum())
            .append("laborTotal", getLaborTotal())
            .append("materialPrice", getMaterialPrice())
            .append("materialNum", getMaterialNum())
            .append("materialTotal", getMaterialTotal())
            .append("machineryPrice", getMachineryPrice())
            .append("machineryNum", getMachineryNum())
            .append("machineryTotal", getMachineryTotal())
            .append("totalAmount", getTotalAmount())
            .append("bill1", getBill1())
            .append("bill3", getBill3())
            .append("bill6", getBill6())
            .append("bill9", getBill9())
            .append("bill13", getBill13())
            .append("bill", getBill())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
